<?php
 class Utilisateur {


	 function __construct(){
		 
			$a =& load("Sessions");
			$a->restreint(1000);

	 }
 
	function Ajouter(){

		$view = "utilisateur/ajouter";

		$f=& load("Forms");
		$f->setSpecifications($view);


		//---------
		
		afficher($view,array("controleur"=>"utilisateur/"));
	}
	

	function _Ajouter(){
		
		$view = "utilisateur/ajouter";
	
		$f=& load("Forms");
		$f->setSpecifications($view);

		//GLOBAL $URLBASE;
		//---------

		if ($f->testerRegles($_POST) == false){ // Erreurs : on réaffiche et on demande de corriger
			$f->setData($_POST);

			afficher($view,array("controleur"=>"utilisateur/"));
		}else{ // C'est bon ! On insère dans la base et on confirme
			modele("default");
					
			ajouterUtilisateur($_POST);

			
			
			// Envoi d'un mail de bienvenue à l'utilisateur
			// --------------------------------------------
							
		
	GLOBAL $PATHBASE, $MAILDISPO;
			if ($MAILDISPO == true){ // Le mail est dispo

				include($PATHBASE."classes/class.phpmailer.php");
				date_default_timezone_set('Europe/Paris');

				$mail             = new PHPMailer();
				
				$mail->IsSMTP();
				$mail->SMTPAuth   = true;                  // enable SMTP authentication
				$mail->SMTPSecure = "ssl";                 // sets the prefix to the servier
				$mail->Host       = "smtp.gmail.com";      // sets GMAIL as the SMTP server
				$mail->Port       = 465;                   // set the SMTP port
				
				$mail->Username   = "exosmaths@gmail.com";  // GMAIL username
				$mail->Password   = "ab47s8z56s41";            // GMAIL password
				
				$mail->From       = "exosmaths@gmail.com";
				$mail->FromName   = "Administrateur";;

				$mail->WordWrap   = 65; // set word wrap
			
				
				$mail->AddReplyTo("exosmaths@gmail.com","Administrateur");
				

				
				$mail->IsHTML(true); // send as HTML


				$mail->Subject = "[ExosMaths] Votre compte a été créé !";


				$mail -> AddAddress($_POST["mail"], $_POST["nomprenom"]);

				$body = <<<EOF
Bonjour,

Votre compte utilisateur a été créé sur l'application ExosMaths.

	Voici votre login : 	
					
EOF;
				$body.=$_POST["login"].".\n";
				$body.=<<<EOF
	Votre mot de passe temporaire est : 
					
EOF;
				$body.=$_POST["pass"].".\n";
						$body.=<<<EOF

Pour des raisons de sécurité, il est préférable que vous changiez votre mot de passe dès votre prochaine connexion (menu "Fichier"/"Mes informations").

Cordialement

L'administrateur ExosMaths
EOF;
				$mail->MsgHTML($body);

				$mail -> Body =$body;

				$mail -> AddAttachment ( $PATHBASE."staticdata/pdf/aide.pdf" );

				$mail -> Send();

			}
			afficher("conf", array("titre" => "Nouvel utilisateur", "notice" => "L'utilisateur a bien été inséré dans la base","controleur"=>"utilisateur/"));
		}
	
	}
	
	function Index(){
		afficher("utilisateur/index");
	}
	
	function Consulter($id){
		modele("default");
		$dat=recupUtilisateur($id);
		afficher("utilisateur/consulter",array("login"=>$dat["login"],"pass"=>$dat["pass"],"groupe"=>$dat["groupe"],"nomprenom"=>$dat["nomprenom"],"mail"=>$dat["mail"],"controleur"=>"utilisateur/"));
	}
	
	function Modifier($id) {
		$view = "utilisateur/ajouter";
		modele("default");
		$f=& load("Forms");
		$f->setSpecifications($view);
		$f->setData(recupUtilisateur($id));
		//---------
		afficher($view,array("retour"=>"utilisateur/modifier/".$id,"controleur"=>"utilisateur/"));
	}
	
	function _Modifier($id){
		$view = "utilisateur/ajouter";

		$f=& load("Forms");
		$f->setSpecifications($view);

		//---------

		if ($f->testerRegles($_POST) == false){ // Erreurs : on réaffiche et on demande de corriger
			$f->setData($_POST);
			afficher($view,array("retour"=>"utilisateur/modifier/".$id,"controleur"=>"utilisateur/"));
		}else{ // C'est bon ! On insère dans la base et on confirme
			modele("default");
			modifUtilisateur($_POST,$id);
			afficher("conf", array("titre" => "Utilisateur modifié", "notice" => "L'utilisateur a bien été modifié","controleur"=>"utilisateur/"));
		}
	}
	
	function Supprimer($id) {
			modele("default");
			$uti=recupUtilisateur($id);
			afficher("confsuppression",array("titre"=>"Suppression d'un utilisateur","id"=>$id,"controleur"=>"utilisateur/","methode"=>"supprimer/","nom"=>$uti["login"]));
	}
	
	function _Supprimer($id){
	
		GLOBAL $URLBASE;
		modele("default");
		supprimerUtilisateur($id);
		header("Location: ".$URLBASE."/utilisateur");
		} 
}
	
?>
